package com.administrator.scoreManageSys.entity.system;

import com.fasterxml.jackson.annotation.JsonInclude;

import javax.validation.constraints.NotEmpty;
import java.util.List;

/**
 * 用户实体类
 *
 * @author Administrator
 */
@JsonInclude(value = JsonInclude.Include.NON_NULL)
public class User {
    /**
     * 用户id
     */
    private Long id;
    /**
     * 用户学号
     */
    private Long userNumber;
    /**
     * 用户手机号
     */
    private Long phone;
    /**
     * 考季id
     */
    private Long seasonId;
    /**
     * 是否可操作 0 不可 1可以
     */
    private Long isOperating;
    /**
     * 考季名称
     */
    private String seasonName;
    /**
     * 用户身份证号
     */
    private String identityCard;
    /**
     * 用户身份  0:管理员 / 1:学生 /2:老师
     */
    private Long identity;
    /**
     * 用户角色id
     */
    private Long role;
    /**
     * 用户班级id
     */
    private Long classId;
    /**
     * 性别 1/2 男/女
     */
    private Long sex;
    /**
     * 入学时间
     */
    private Long admissionTime;
    /**
     * 创建时间
     */
    private Long createTime;
    /**
     * 是否设置密保 0 未设置密保 1 已设置密保
     */
    private Long isSecuritySettings;
    /**
     * 创建人
     */
    private Long createUser;
    /**
     * 用户名称
     */
    private String userName;
    /**
     * 创建人名称
     */
    private String createUserName;
    /**
     * 登录账号
     */
    private String account;
    /**
     * 用户密码
     */
    private String password;
    /**
     * 性别
     */
    private String gender;
    /**
     * 入学/入职时间
     */
    private String admissionTimeName;
    /**
     * 创建时间
     */
    private String creationTime;
    /**
     * 用户身份
     */
    private String userIdentity;
    /**
     * 用户身份证地址
     */
    private String idEntityCardAddress;
    /**
     * 现居住地址
     */
    private String address;
    /**
     * 角色名称
     */
    private String roleName;
    /**
     * 用户班级名称
     */
    private String className;
    /**
     * 用户班级名称
     */
    private List<ExamUser> examUser;


    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getRoleName() {
        return roleName;
    }

    public void setRoleName(String roleName) {
        this.roleName = roleName;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getIsOperating() {
        return isOperating;
    }

    public void setIsOperating(Long isOperating) {
        this.isOperating = isOperating;
    }

    public Long getUserNumber() {
        return userNumber;
    }

    public void setUserNumber(Long userNumber) {
        this.userNumber = userNumber;
    }

    public Long getIsSecuritySettings() {
        return isSecuritySettings;
    }

    public List<ExamUser> getExamUser() {
        return examUser;
    }

    public void setExamUser(List<ExamUser> examUser) {
        this.examUser = examUser;
    }

    public void setIsSecuritySettings(Long isSecuritySettings) {
        this.isSecuritySettings = isSecuritySettings;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public String getAdmissionTimeName() {
        return admissionTimeName;
    }

    public void setAdmissionTimeName(String admissionTimeName) {
        this.admissionTimeName = admissionTimeName;
    }

    public String getCreationTime() {
        return creationTime;
    }

    public void setCreationTime(String creationTime) {
        this.creationTime = creationTime;
    }

    public String getUserIdentity() {
        return userIdentity;
    }

    public void setUserIdentity(String userIdentity) {
        this.userIdentity = userIdentity;
    }

    public Long getPhone() {
        return phone;
    }

    public void setPhone(Long phone) {
        this.phone = phone;
    }

    public Long getClassId() {
        return classId;
    }

    public Long getSeasonId() {
        return seasonId;
    }

    public void setSeasonId(Long seasonId) {
        this.seasonId = seasonId;
    }

    public String getSeasonName() {
        return seasonName;
    }

    public void setSeasonName(String seasonName) {
        this.seasonName = seasonName;
    }

    public void setClassId(Long classId) {
        this.classId = classId;
    }

    public Long getSex() {
        return sex;
    }

    public void setSex(Long sex) {
        this.sex = sex;
    }

    public Long getAdmissionTime() {
        return admissionTime;
    }

    public void setAdmissionTime(Long admissionTime) {
        this.admissionTime = admissionTime;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public Long getCreateUser() {
        return createUser;
    }

    public void setCreateUser(Long createUser) {
        this.createUser = createUser;
    }

    public String getCreateUserName() {
        return createUserName;
    }

    public void setCreateUserName(String createUserName) {
        this.createUserName = createUserName;
    }

    public String getClassName() {
        return className;
    }

    public void setClassName(String className) {
        this.className = className;
    }

    public String getIdentityCard() {
        return identityCard;
    }

    public void setIdentityCard(String identityCard) {
        this.identityCard = identityCard;
    }

    public Long getIdentity() {
        return identity;
    }

    public void setIdentity(Long identity) {
        this.identity = identity;
    }

    public Long getRole() {
        return role;
    }

    public void setRole(Long role) {
        this.role = role;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getIdEntityCardAddress() {
        return idEntityCardAddress;
    }

    public void setIdEntityCardAddress(String idEntityCardAddress) {
        this.idEntityCardAddress = idEntityCardAddress;
    }

    public User() {
    }

    public User(Long userNumber, Long phone, String identityCard, Long identity, String userName, String account, String password, String idEntityCardAddress, String address) {
        this.userNumber = userNumber;
        this.phone = phone;
        this.identityCard = identityCard;
        this.identity = identity;
        this.userName = userName;
        this.account = account;
        this.password = password;
        this.idEntityCardAddress = idEntityCardAddress;
        this.address = address;
    }

    public User(String account, String password, Long userNumber, Long admissionTime) {
        this.account = account;
        this.password = password;
        this.userNumber = userNumber;
        this.admissionTime = admissionTime;
    }

    public User(Long id, String userName, Long phone, Long roleId, Long classId, String address) {
        this.id = id;
        this.userName = userName;
        this.phone = phone;
        this.role = roleId;
        this.classId = classId;
        this.address = address;
    }
    public User(Long id, String userName, Long phone, Long roleId,  String address,Long identity, Long sex, String identityCard, String idEntityCardAddress, Long admissionTime) {
        this.id = id;
        this.userName = userName;
        this.phone = phone;
        this.role = roleId;
        this.address = address;
        this.identity = identity;
        this.sex = sex;
        this.identityCard = identityCard;
        this.idEntityCardAddress = idEntityCardAddress;
        this.admissionTime = admissionTime;
    }
}
